Methods and apparatuses for recording and viewing a collaboration session

ABSTRACT

In one embodiment, the systems and methods attend a collaboration session; detect content shared during the collaboration session; automatically record the content and a time stamp corresponding to the content; and play at least a portion of the content during the collaboration session.

RELATED APPLICATION

The present application is a continuation-in-part to and claims thebenefit of U.S. patent application Ser. No. 11/324,044, filed on Dec.29, 2005 entitled “Methods and Apparatuses For Recording a CollaborationSession,” which is incorporated herein by reference.

FIELD OF INVENTION

The present invention relates generally to recording content and, moreparticularly, to recording content during a collaboration session.

BACKGROUND

There has been an increased use in collaboration sessions that areInternet or web-based to communicate with employees, vendors, andclients. During these collaboration sessions, information is typicallyexchanged between multiple participants. This exchanged information orcontent may include audio, graphical, and/or textual information.

SUMMARY

In one embodiment, the systems and methods attend a collaborationsession; detect content shared during the collaboration session;automatically record the content and a time stamp corresponding to thecontent; and play at least a portion of the content during thecollaboration session.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this specification, illustrate and explain one embodiment of themethods and apparatuses for recording and viewing a collaborationsession. In the drawings,

FIG. 1 is a diagram illustrating an environment within which the methodsand apparatuses for recording and viewing a collaboration session areimplemented;

FIG. 2 is a simplified block diagram illustrating one embodiment inwhich the methods and apparatuses for recording and viewing acollaboration session are implemented;

FIG. 3 is a simplified block diagram illustrating a system, consistentwith one embodiment of the methods and apparatuses for recording andviewing a collaboration session;

FIG. 4 is a flow diagram consistent with one embodiment of the methodsand apparatuses for recording and viewing a collaboration session;

FIGS. 5A, 5B, and 5C are flow diagrams consistent with one embodiment ofthe methods and apparatuses for recording and viewing a collaborationsession;

FIG. 6 is a flow diagram consistent with one embodiment of the methodsand apparatuses for recording and viewing a collaboration session; and

FIG. 7 is a flow diagram consistent with one embodiment of the methodsand apparatuses for recording and viewing a collaboration session.

DETAILED DESCRIPTION

The following detailed description of the methods and apparatuses forrecording and viewing a collaboration session refers to the accompanyingdrawings. The detailed description is not intended to limit the methodsand apparatuses for recording and viewing a collaboration session.Instead, the scope of the methods and apparatuses for recording andviewing a collaboration session is defined by the appended claims andequivalents. Those skilled in the art will recognize that many otherimplementations are possible, consistent with the present invention.

References to a device include a device utilized by a user such as adesktop computer, a portable computer, a personal digital assistant, avideo phone, a landline telephone, a cellular telephone, and a devicecapable of receiving/transmitting an electronic signal.

References to content include audio, video, graphical, and/or textualdata.

References to a collaboration session include a plurality of devicesthat are configured to view content submitted by one of the devices.

References to a participant device include devices that areparticipating in the collaboration session.

References to a presenter device include a device that is a participantin the collaboration session and shares content shared with otherparticipants.

References to attendee devices include a device that is a participant inthe collaboration session and receives content shared by anotherparticipant device. The attendee devices are capable of receiving andpresenting to users in a user discernable format content that is offeredby the presenter device. In some instances, the attendee devices arecapable of modifying the content shared by the presenter device.

FIG. 1 is a diagram illustrating an environment within which the methodsand apparatuses for recording and viewing a collaboration session areimplemented. The environment includes an electronic device 110 (e.g., acomputing platform configured to act as a client device, such as acomputer, a personal digital assistant, and the like), a user interface115, a network 120 (e.g., a local area network, a home network, theInternet), and a server 130 (e.g., a computing platform configured toact as a server).

In one embodiment, one or more user interface 115 components are madeintegral with the electronic device 110 (e.g., a keypad, a video displayscreen, input and output interfaces, etc., in the same housing such as apersonal digital assistant). In other embodiments, one or more userinterface 115 components (e.g., a keyboard, a pointing device such as amouse, a trackball, a microphone, a speaker, a display, a camera, etc.)are physically separate from, and are conventionally coupled to, theelectronic device 110. In one embodiment, the user utilizes interface115 to access and control content and applications stored in electronicdevice 110, server 130, or a remote storage device (not shown) coupledvia network 120.

In accordance with the invention, embodiments of recording and viewing acollaboration session below are executed by an electronic processor inelectronic device 110, in server 130, or by processors in electronicdevice 110 and in server 130 acting together. Server 130 is illustratedin FIG. 1 as being a single computing platform, but in other instancesare two or more interconnected computing platforms that act as a server.

FIG. 2 is a simplified diagram illustrating an exemplary architecture inwhich the methods and apparatuses for recording and viewing acollaboration session are implemented. The exemplary architectureincludes a plurality of electronic devices 202, a server device 210, anda network 201 connecting electronic devices 202 to server 210 and eachelectronic device 202 to each other. The plurality of electronic devices202 are each configured to include a computer-readable medium 209, suchas random access memory, coupled to an electronic processor 208.Processor 208 executes program instructions stored in thecomputer-readable medium 209. In one embodiment, a unique user operateseach electronic device 202 via an interface 115 as described withreference to FIG. 1.

The server device 130 includes a processor 211 coupled to acomputer-readable medium 212. In one embodiment, the server device 130is coupled to one or more additional external or internal devices, suchas, without limitation, a secondary data storage element, such asdatabase 240.

In one instance, processors 208 and 211 are manufactured by IntelCorporation, of Santa Clara, Calif. In other instances, othermicroprocessors are used.

In one embodiment, the plurality of client devices 202 and the server210 include instructions for a customized application for selectivelysharing a portion of a display during a collaboration session. In oneembodiment, the plurality of computer-readable media 209 and 212contain, in part, the customized application. Additionally, theplurality of client devices 202 and the server 210 are configured toreceive and transmit electronic messages for use with the customizedapplication. Similarly, the network 210 is configured to transmitelectronic messages for use with the customized application.

One or more user applications are stored in media 209, in media 212, ora single user application is stored in part in one media 209 and in partin media 212. In one instance, a stored user application, regardless ofstorage location, is made customizable based on recording and viewing acollaboration session as determined using embodiments described below.

FIG. 3 illustrates one embodiment of a system 300. In one embodiment,the system 300 is embodied within the server 130. In another embodiment,the system 300 is embodied within the electronic device 110. In yetanother embodiment, the system 300 is embodied within both theelectronic device 110 and the server 130.

In one embodiment, the system 300 includes a collaboration sessiondetection module 310, a content recording module 320, a storage module330, an interface module 340, a control module 350, a text extractionmodule 360, a text archive module 370, and a time stamp module 380.

In one embodiment, the control module 350 communicates with thecollaboration session detection module 310, the content recording module320, the storage module 330, the interface module 340, the textextraction module 360, the text archive module 370, and the time stampmodule 380. In one embodiment, the control module 350 coordinates tasks,requests, and communications between the collaboration session detectionmodule 310, the content recording module 320, the storage module 330,the interface module 340, the text extraction module 360, the textarchive module 370, and the time stamp module 380.

In one embodiment, the collaboration detection module 310 detects acollaboration session between multiple participants. In one embodiment,the collaboration session includes sharing content among theparticipants through a display device. For example, voice and datacontent may be shared through the display device such as a computersystem, a cellular phone, a personal digital assistant, and the like.

Further, the content may include graphical and textual data through wordprocessors, chat windows, documents, and the like.

In one embodiment, the content recording module 320 records the contentthat is exchanged during the collaboration session.

In one embodiment, the storage module 330 stores the content that isrecorded within the content recording module 320. Further, the storagemodule 330 is also configured to store information corresponding to theparticipants of the collaboration session.

In one embodiment, the interface detection module 340 detects when thetext messages are being transmitted from one of the devicesparticipating in the collaboration session. In another embodiment, theinterface detection module 340 monitors the voice transmissionsoriginating from one of the devices participating in the collaborationsession. In yet another embodiment, the interface detection module 340detects any activity by one of the devices participating in thecollaboration session.

In one embodiment, the interface module 340 receives a signal from oneof the electronic devices 110. In one embodiment, the electronic devices110 are participating in a collaboration session. In another embodiment,the interface module 340 delivers a signal to one of the electronicdevices 110.

In one embodiment, the content detection module 360 monitors the contentthat is exchanged between participants within the collaboration session.

In one embodiment, the content detection module 360 detects thedifferent types of content that is exchanged during the collaborationsession such as text messages through instant messaging, voiceinformation, application sharing, and the like.

In one embodiment, the text archive module 370 receives the textmessages that are transmitted among the participants during thecollaboration session and saves them within the storage module 330. Inone embodiment, the text archive module 370 formats the individual textmessages into a single file and denotes the author of each text message.

In another embodiment, the text archive module 370 receives voice datastreams and converts these voice data streams into a textualrepresentation. Further, the text archive module 370 formats theindividual textual representations into a single file and denotes theauthor of each textual representation.

In one embodiment, the time stamp module 380 assigns a time to discreteportions of the content exchanged among the participants during thecollaboration session. For example, when the content is text messagingthrough instant messaging, then the time stamp module 380 assigns a timestamp to each text message transmitted based on the time oftransmission. In another example, when content is streamed during thecollaboration session, the time stamp module 380 assigns a time stamp toa portion of the streamed content at a predetermined frequency.

In one embodiment, the time stamp corresponds to an actual time of day.In another embodiment, the time stamp corresponds to a time that thecollaboration session was initiated.

The system 300 in FIG. 3 is shown for exemplary purposes and is merelyone embodiment of the methods and apparatuses for recording and viewinga collaboration session. Additional modules may be added to the system300 without departing from the scope of the methods and apparatuses forrecording and viewing a collaboration session. Similarly, modules may becombined or deleted without departing from the scope of the methods andapparatuses for recording and viewing a collaboration session.

The flow diagrams as depicted in FIGS. 4, 5A, 5B, 5C, and 6 are oneembodiment of the methods and apparatuses for recording and viewing acollaboration session. The blocks within the flow diagrams can beperformed in a different sequence without departing from the spirit ofthe methods and apparatuses for recording and viewing a collaborationsession. Further, blocks can be deleted, added, or combined withoutdeparting from the spirit of the methods and apparatuses for recordingand viewing a collaboration session.

The flow diagram in FIG. 4 illustrates recording and viewing acollaboration session according to one embodiment of the invention.

In Block 410, a collaboration session is detected. In one embodiment,the collaboration session is detected when an attendee device initiatesthe session. In another embodiment, the collaboration session isdetected when an invitee attends the collaboration session. In oneembodiment, the collaboration session is detected by the collaborationsession detection module 310.

In Block 420, content that is exchanged during the collaboration sessionis detected. In one embodiment, the content is detected through thecontent detection module 360. In one embodiment, the content includesdocuments, applications, voice data, audio data, textual data, graphicaldata, and the like.

In Block 430, if the content is not detected, then detection continuesin the Block 420.

In Block 430, if the content is detected, then the content is timestamped in the Block 440. In one embodiment, the time stamp is appliedto the content in the time stamp module 380. In one embodiment, the timestamp indicates a temporal relationship between the content and thecollaboration session. For example, if the content is detected towardsthe beginning of the collaboration session, then the time stampassociated with this content represents a time period towards thebeginning of the collaboration session.

In Block 450, the content is recorded with the associated time stamp. Inone embodiment, the content recording module 320 records the content andthe associated time stamp into the storage module 330.

The flow diagram in FIG. 5A illustrates a method for recording contentshared during collaboration session according to one embodiment of theinvention.

In Block 505, content that is exchanged during the collaboration sessionis detected. In one embodiment, the content is detected through thecontent detection module 360. In one embodiment, the content includesdocuments, applications, voice data, audio data, textual data, graphicaldata, and the like.

In Block 510, the content identified in the Block 505 is analyzed todetermine the type of the content. For example, the content typesinclude documents, applications, voice data, text messages, and thelike.

In Block 515, if the content is considered a text message, then thecontent is further processed in Block 520. If the content is notconsidered a text message, then the content is further processed inBlock 535 (FIG. 5B). In one embodiment, the text message utilizes a SMSformat. In another embodiment, the text message is provided by a serviceknown as “Instant Messaging”. In yet another embodiment, the textmessages are messages containing text and other content in real timefrom a participant to another participant of the collaboration session.

In the Block 520, in the event that there are multiple text messages,each text message is separated into discrete messages. For example,there can be multiple text messages sent by different or commonparticipants of the collaboration session.

In Block 525, a time stamp is associated with each text message and isutilized to determine when the text message was sent relative to thecollaboration session. For example, the time stamp may indicate anactual time of day. In another example, the time stamp may indicate atime count that is relative to the initiation of the collaborationsession. In one embodiment, the time stamp module 380 forms the timestamp for each text message.

In Block 530, each of the text messages are stored and archived. In oneembodiment, the text archive module 370 combines each of the separatetext messages and incorporates the time stamp and the author with eachtext message. Further, the combined text messages are formatted as atext file in one embodiment.

In one embodiment, all the text messages transmitted within thecollaboration session are combined within a single text file. In anotherembodiment, all the text messages transmitted within the collaborationsession are stored in multiple text files.

In one embodiment, the text file is searchable for keywords, authors,time stamps, and the like.

In one embodiment, the text messages are stored in the storage module330.

The flow diagram in FIG. 5B illustrates a method for recording contentshared during collaboration session according to one embodiment of theinvention.

In Block 535, if the content is considered voice data, then the contentis further processed in Block 540. If the content is not considered avoice data, then the content is further processed in Block 560 (FIG.5C). In one embodiment, the voice data is carried over a plain oldtelephone service (POTS). In another embodiment, the voice data iscarried over voice over internet protocol (VoIP). In some instances, thevoice data is transmitted among the participants of the collaborationsession where the participants utilize a combination of POTS and VoIPservices.

In Block 540, a time stamp is periodically attached to the voice datathroughout the stream of voice data. In one embodiment, the frequency ofthe time stamp being attached to the voice data is selectable. Forexample, the frequency of the time stamp is selected as every second,every 10 seconds, every minute, and the like. In one embodiment, thetime stamp is correlated to the timing of the collaboration session. Forexample, in one embodiment, the time stamp indicates an actual time ofday. In another embodiment, the time stamp is relative to the initiationof the collaboration session.

In one embodiment, the voice data and the time stamp(s) are storedwithin the storage module 330.

In Block 545, the voice data is converted into text data. For example,the voice data stream is detected and converted into text data thatrepresents the voice data stream. In one embodiment, after theconversion of the voice data into the text data, the time stamps areretained and associated with the corresponding text data.

In Block 550, the text data representing the voice data are stored andarchived. Further, the time stamps are integrated and stored with thetext data in one embodiment. In one embodiment, the text data are storedin the storage module 330.

The flow diagram in FIG. 5C illustrates a method for recording contentshared during collaboration session according to one embodiment of theinvention.

In Block 560, if the content is shared with one of the participantsduring the collaboration session, then the content is further processedin Block 565. In one embodiment, the content includes animations, video,documents, applications that are shared during the collaborationsession.

In Block 565, the content is captured at a time interval. In oneembodiment, the time interval is selected to adequately capture thecontent. For example, to adequately capture video, the periodic timeinterval is set to capture at 15 times per second. Further, toadequately capture static documents, the periodic time interval is setto capture at 1 time per second.

In Block 570, a time stamp is attached to the content at each timeinterval. In one embodiment, the time stamp is correlated to the timingof the collaboration session. For example, in one embodiment, the timestamp indicates an actual time of day. In another embodiment, the timestamp is relative to the initiation of the collaboration session.

In Block 550, the captured content and the associated time stamps arestored and archived. In one embodiment, the captured content and theassociated time stamps are stored in the storage module 330.

The flow diagram in FIG. 6 illustrates accessing content that waspreviously recorded during a collaboration session according to oneembodiment of the invention.

In Block 610, a text file corresponding to a collaboration session isdetected. In one embodiment, the text file represents text messages,voice data, documents, applications that were shared during thecollaboration session. In another embodiment, the text file maycorrespond to multiple collaboration sessions.

In Block 620, a key search term is utilized to search the text file. Forexample, a search term may include “manager” when the collaborationsession pertains to interfacing with customers and resolving customerservice issues. By doing a search for the term “manager”, a user may beable to search instances during the collaboration session that one ofthe participants requested assistance from a manager in this example.

In another example, if the collaboration session include participationfrom a financial institution, key search terms that are searched mayinclude buy, sell, transfer, deposit, withdraw, and the like. In thisexample, by searching for these terms, a user is capable of identifyinginstances within the collaboration session that may need further review.

In Block 630, if the searched term is not found, then additional searchterms may be utilized in the Block 620.

If the search term is found, then the time stamp associated with thelocation of the search term within the text file detected in Block 640.

In Block 650, additional content that was shared during thecollaboration session is also identified. For example, voice dataidentified in the Block 535 and shared content identified in the Block560 that share the detected time stamp from the Block 640 are alsoidentified.

In one embodiment, additional time stamps within a predetermined amountof time of the time stamp identified in the Block 640 are alsoidentified. Further, shared content that correspond to these additionaltime stamps are also identified.

In use, if the collaboration session involves a financial institution,the shared content that occurs prior to and after the time stampassociated with a search term is identified. In this example, the sharedcontent prior to and after the search term provides background andcontext to the specific search term found within the collaborationsession. The actual number of time stamps that are identified in theBlock 650 prior to and after the search term depends on the frequency ofthe time stamps.

Although the Blocks 610 and 620 utilize a text file, different types offiles can be substituted in other embodiments. For example, a voice datafile may be searched within the Block 620 for a key term. Further, oncethe key term is found within the voice data file, a corresponding timestamp is identified through the Block 540.

The flow diagram in FIG. 7 illustrates participating in a collaborationsession, recording a collaboration session, and viewing the recordedcollaboration session while the collaboration session is still beingrecorded according to one embodiment of the invention.

In Block 710, participants attend a collaboration session. In oneembodiment, a server dedicated to the collaboration session coordinatesthe interaction between participants of the collaboration session.

In Block 720, content shared during the collaboration session arecaptured and recorded. In one embodiment, a server dedicated torecording the collaboration session captures and records the contentshared during the session.

In Block 730, a request to view the recorded content of thecollaboration session is detected.

In one embodiment, by having a participant of the collaboration sessionrequest to view the recorded content while the collaboration is stilltaking place, this participant is asking to pause active participationin the current collaboration session. In one embodiment, one of theparticipants in the collaboration session indicates that the participantwishes to view recorded content of the collaboration session while thecollaboration is still taking place. By indicating the desire to viewthe content of the collaboration session while the collaboration sessionis still taking place, this participant wished to pause activeinvolvement in the current collaboration session. For example, by havingan active participant wanting to view the content of a collaborationsession that is currently taking place, this active participant isrequesting a pause in active participation of the collaboration sessionand wishes to view the content of the collaboration session instead.

In another embodiment, one of the participants of the collaborationsession requests to view the recorded content of the collaborationsession while still participating in the current collaboration session.

In Block 740, if the view request is not detected, then continuedmonitoring continues within the Block 730. If the view request isdetected, then a connection is made with the recording server withinBlock 750.

In Block 760, the participant that requested to view the recordedcontent of the collaboration session gains access to the recordedcontent. In one embodiment, the collaboration session continues as therecorded content is provided to the requesting participant. For example,the amount of recorded content increases as the collaboration sessioncontinues.

In one embodiment, the recorded content is streamed to the requestingparticipant by the recording server. In another embodiment, therequesting participant gains access to the recording server and viewsthe recorded content through the recording server.

In one embodiment, as the requesting participant views the recordedcontent, the requesting participant is no longer an active participantwithin the collaboration session. In another embodiment, the requestingparticipant remains an active participant within the collaborationsession while viewing the recorded content.

In one embodiment, the requesting participant is able to pause, rewind,fast forward, and play the recorded content.

In Block 770, the requesting participant may remain connected with therecording server in the Block 750. Further, the requesting participantmay not wish to continue viewing the recorded content and may wish toreturn as an active participant within the collaboration session andreturn to the Block 710.

In one embodiment, the participant may cycle through and view recordedcontent from multiple collaboration sessions. In one embodiment, theparticipant may view recorded content from multiple collaborationsession simultaneously. Further, the participant may view recordedcontent from multiple collaboration sessions while these collaborationsession are currently active.

The foregoing descriptions of specific embodiments of the invention havebeen presented for purposes of illustration and description. Theinvention may be applied to a variety of other applications.

They are not intended to be exhaustive or to limit the invention to theprecise embodiments disclosed, and naturally many modifications andvariations are possible in light of the above teaching. The embodimentswere chosen and described in order to explain the principles of theinvention and its practical application, to thereby enable othersskilled in the art to best utilize the invention and various embodimentswith various modifications as are suited to the particular usecontemplated. It is intended that the scope of the invention be definedby the claims appended hereto and their equivalents.

1. A method comprising: attending a collaboration session; detectingcontent shared during the collaboration session; automatically recordingthe content and a time stamp corresponding to the content; and playingat least a portion of the content during the collaboration session. 2.The method according to claim 1 wherein automatically recording occursduring the collaboration session.
 3. The method according to claim 1further comprising identifying a content type based on the content. 4.The method according to claim 3 wherein the content type is an audiotransmission.
 5. The method according to claim 3 wherein the contenttype is an graphical transmission.
 6. The method according to claim 3wherein the content type is a textual transmission.
 7. The methodaccording to claim 1 further comprising assigning the time stamp to thecontent based on a temporal characteristic of the content.
 8. The methodaccording to claim 1 further comprising capturing the content at aperiodic time interval.
 9. The method according to claim 1 furthercomprising pausing attendance within the collaboration session whileplaying the portion of the content.
 10. The method according to claim 1further comprising pausing playback of the portion of the content. 11.The method according to claim 10 further comprising rejoining thecollaboration session after pausing the playback of the portion of thecontent.
 12. A system, comprising: a content detection module configuredto detect content that is shared during a collaboration session; acontent recording module configured to record the content associatedwith the collaboration session and to play back a portion of the contentduring the collaboration session; a content time stamp module configuredto assign a time stamp to the content as the content is shared duringthe collaboration session; and a storage module configured to store thecontent and the time stamp.
 13. The system according to claim 12 furthercomprising a collaboration session detection module configured to detectthe collaboration session.
 14. The system according to claim 12 furthercomprising a text archive module configured to detect a text messagefrom the content.
 15. The system according to claim 14 wherein the textarchive module is further configured to separate the text message intosub-messages.
 16. The system according to claim 12 wherein the contentdetection module is configured to identify a content type based on thecontent.
 17. The system according to claim 16 wherein the content typeis an audio transmission.
 18. The system according to claim 16 whereinthe content type is an graphical transmission.
 19. The system accordingto claim 16 wherein the content type is a textual transmission.
 20. Asystem comprising: means for attending a collaboration session; meansfor detecting content shared during the collaboration session; means forautomatically recording the content and a time stamp corresponding tothe content; and means for playing at least a portion of the contentduring the collaboration session.
 21. The system according to claim 20wherein the means for playing includes streaming the portion of thecontent to a recipient.
 22. The system according to claim 20 wherein themeans for playing includes allowing a recipient to access the portion ofthe content.